package com.atguigu.day09.test.test;

/**
 * @version 1.0
 * @Author 马冰
 * @Date 2024/11/9 16:57
 * @注释 - 提供静态方法public static int compare(Graphic s1, Graphic s2)如果s1的面积大于、小于、等于s2的面积，分别返回正整数、符整数和0。
 *      - 提供静态方法public static boolean equals(Graphics1, Graphics2)比较两个图形的面积和周长是否都相等
 *      - 提供静态方法public static void sort(Graphic[] arr)可以给所有图形按照面积从小到大排序
 *      - 提供静态方法public static void print(Graphic[] arr)可以遍历输出所有图形信息
 */
public class GraphicTools {
    public static int compare(Graphic s1, Graphic s2){
        if(s1.area() > s2.area()){
            return 1;
        }else if(s1.area() < s2.area()){
            return -1;
        }else{
            return 0;
        }
    }
    public static boolean equals(Graphic s1, Graphic s2){
        if(s1.area() == s2.area()){
            if(s1.perimeter() == s2.perimeter()){
                return true;
            }
        }
        return false;
    }
    public static void sort(Graphic[] arr){
        Graphic[] temp = new Graphic[arr.length];
        for(int i = 0; i < arr.length - 1; i++){
            for(int j = 0; j < arr.length - 1; j++){
                if(arr[j].area() > arr[j + 1].area()){}
                temp[0] = arr[j];
                arr[j] = arr[j+1];
                arr[j+1] = temp[0];
            }
        }
    }
    public static void print(String massage, Graphic[] arr){
        System.out.println(massage);
        for (Graphic g : arr) {
            String s = g.toString();
            System.out.println(s);
        }
        System.out.println();
    }
}
